package cn.stylefeng.guns.modular.business.entity;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * <p>
 * 分类表
 * </p>
 *
 * @author
 * @since 2019-07-16
 */
@TableName("c_category")
@Data
public class Category implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 主键id
     */
    @TableId(value = "CATEGORY_ID", type = IdType.AUTO)
    private Long categoryId;

    /**
     * 父id
     */
    @TableField("PID")
    private Long pid;

    /**
     * 父级ids
     */
    @TableField("PIDS")
    private String pids;

    /**
     * 名称
     */
    @TableField("NAME")
    private String name;

    /**
     * 描述
     */
    @TableField("DESCRIPTION")
    private String description;

    /**
     * 版本（乐观锁保留字段）
     */
    @TableField("VERSION")
    private Integer version;

    /**
     * 图片
     */
    @TableField("PICTURE")
    private String picture;

    /**
     * 排序
     */
    @TableField("SORT")
    private Integer sort;

    /**
     * 创建时间
     */
    @TableField(value = "CREATE_TIME", fill = FieldFill.INSERT)
    private Date createTime;

    /**
     * 修改时间
     */
    @TableField(value = "UPDATE_TIME", fill = FieldFill.UPDATE)
    private Date updateTime;

    /**
     * 创建人
     */
    @TableField(value = "CREATE_USER", fill = FieldFill.INSERT)
    private Long createUser;

    /**
     * 等级
     */
    @TableField("LEVEL")
    private Long level;

    /**
     * 修改人
     */
    @TableField(value = "UPDATE_USER", fill = FieldFill.UPDATE)
    private Long updateUser;

    /**
     * 分类类型
     */
    @TableField(value = "CATEGORY_TYPE")
    private String categoryType;

    /**
     * 自动类型
     */
    @TableField(value = "AUTO_STATUS")
    private Integer autoStatus;


    /**
     * autoClass
     */
    @TableField(value = "AUTO_CLASS")
    private String autoClass;

    /**
     * 卡号长度，如果卡号长度为空或0，那么卡号不需要显示
     */
    @TableField(value = "CARD_NO_LENGTH")
    private Integer cardNOLength;

    /**
     * 卡密长度，如果卡密长度为空或0，那么卡密不需要显示
     */
    @TableField(value = "CARD_PASSWORD_LENGTH")
    private Integer cardPasswordLength;

    /**
     * 提交卡类的备注
     */
    @TableField(value = "CARD_REMARK")
    private String cardRemark;

    /**
     * 回收折扣，只作为显示
     */
    @TableField(value = "RECOVER_RATE")
    private String recoverRate;

    /**
     * 是否热门
     */
    @TableField(value = "HOT")
    private Integer hot;

    /**
     * 是否删除
     */
    @TableField("DELETE_FLAG")
    private Integer deleteFlag;

    /**
     * 背景颜色
     */
    @TableField("back_color")
    private String backColor;

    /**
     * 透明图标
     */
    @TableField("TOU_IMG")
    private String touImg;

    /**
     * 上架状态，0：下架，2上架
     */
    @TableField("SELL_STATUS")
    private Integer sellStatus;

}
